package sueldos;

import java.math.BigDecimal;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;

import org.apache.xerces.impl.dv.dtd.NOTATIONDatatypeValidator;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.swt.widgets.Display;

public class ControlRecibos {

	int codigoEmpresa;
	int legajo;
	String empleado;
	String periodo;
	int tipoliquid;
	BigDecimal neto;
	int estado;
	
	
	
	
	
	public int getEstado() {
		return estado;
	}


	public void setEstado(int estado) {
		this.estado = estado;
	}


	public ControlRecibos(int codigoEmpresa, int legajo, String empleado,
			String periodo, int tipoliquid, BigDecimal neto, int estado) {
		super();
		this.codigoEmpresa = codigoEmpresa;
		this.legajo = legajo;
		this.empleado = empleado;
		this.periodo = periodo;
		this.tipoliquid = tipoliquid;
		this.neto = neto;
		this.estado = estado;
	}


	public boolean isArchivado(int empresa, String legajo, String periodo, String tipoLiq){
		
				try {
					Connection conexion = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbeccarvarela", "", ""); 
					String query="SELECT estado FROM ctrl_recibos WHERE codEmpresa=? AND legajo=? AND periodo=? AND tipoliquid=?";
					PreparedStatement ps = conexion.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
					ps.setInt(1, empresa);
					ps.setString(2, legajo);
					ps.setString(3, periodo);
					ps.setString(4, tipoLiq);
					ps.execute();

					ResultSet rs = ps.getResultSet();
					rs.beforeFirst();
					if (rs.next() && rs.getInt(1) == 1){
						return true;
					}
				} catch (Exception e) {
					e.printStackTrace();
//					MessageDialog ms = new MessageDialog(Display.getDefault().getActiveShell(), "Error", null, e.getMessage(), MessageDialog.ERROR, new String [] {"Aceptar"} , 0);
//					ms.open();
				}

		return false;
		
	}
	public void insertarReciboFaltante(){
		try {
			Connection conexion = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbeccarvarela", "", ""); 
			String query="INSERT INTO ctrl_recibos (codEmpresa, legajo, empleado, periodo, tipoliquid, neto, estado) VALUES (?,?,?,?,?,?,?)";
			PreparedStatement ps = conexion.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
			ps.setInt(1, this.getCodigoEmpresa());
			ps.setInt(2, this.getLegajo());
			ps.setString(3, this.getEmpleado());
			ps.setString(4, this.getPeriodo());
			ps.setInt(5, getTipoliquid());
			ps.setBigDecimal(6, getNeto());
			ps.setInt(7, this.getEstado());
			ps.execute();

			System.out.println(ps.getGeneratedKeys());
			ps.close();
			conexion.close();
		} catch (Exception e) {
			e.printStackTrace();
			MessageDialog ms = new MessageDialog(Display.getDefault().getActiveShell(), "Error", null, e.getMessage(), MessageDialog.ERROR, new String [] {"Aceptar"} , 0);
			ms.open();
		}
	}

	

	public int getCodigoEmpresa() {
		return codigoEmpresa;
	}

	public void setCodigoEmpresa(int codigoEmpresa) {
		this.codigoEmpresa = codigoEmpresa;
	}

	public int getLegajo() {
		return legajo;
	}

	public void setLegajo(int legajo) {
		this.legajo = legajo;
	}


	public String getEmpleado() {
		return empleado;
	}


	public void setEmpleado(String empleado) {
		this.empleado = empleado;
	}


	public String getPeriodo() {
		return periodo;
	}


	public void setPeriodo(String periodo) {
		this.periodo = periodo;
	}


	public int getTipoliquid() {
		return tipoliquid;
	}


	public void setTipoliquid(int tipoliquid) {
		this.tipoliquid = tipoliquid;
	}


	public BigDecimal getNeto() {
		return neto;
	}


	public void setNeto(BigDecimal neto) {
		this.neto = neto;
	}


	public ControlRecibos() {
		
	}

	
}
